package com.ximu.service_home.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.util.Date;

import java.io.Serializable;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * <p>
 * 平台端商品信息
 * </p>
 *
 * @author ximu
 * @since 2022-04-22
 */
@Data
@EqualsAndHashCode(callSuper = false)
@ApiModel(value="PlatCommodity对象", description="平台端商品信息")
public class PlatCommodity implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "商品ID")
      @TableId(value = "goods_id", type = IdType.ID_WORKER_STR)
    private Integer goodsId;

    @ApiModelProperty(value = "商家ID(逻辑外键)")
    private String sellerId;

    @ApiModelProperty(value = "商品分类ID(逻辑外键)  例:如果是一级分类:1 如果是二级分类:1001 写的时候可以判断是一级分类还是二级分类，二级分类进行递归一级分类操作")
    private Integer typeId;

    @ApiModelProperty(value = "商品名称")
    private String goodName;

    @ApiModelProperty(value = "商品信息")
    private String goodsInfo;

    @ApiModelProperty(value = "商品参数")
    private String goodsParameter;

    @ApiModelProperty(value = "商品图片(拼接地址为list)")
    private String goodsPicture;

    @ApiModelProperty(value = "商品单价")
    private Integer goodsPrice;

    @ApiModelProperty(value = "商品库存")
    private Integer goodsInventory;

    @ApiModelProperty(value = "商品版本(下单时候要填的)")
    private String goodsVersion;

    @ApiModelProperty(value = "商品颜色(下单时候要填的)")
    private String goodsColor;

    @ApiModelProperty(value = "商品套装(下单时候要填的，我觉得此模块无必要)")
    private String goodsSuit;

    @ApiModelProperty(value = "逻辑删除 1（true）已删除， 0（false）未删除")
    @TableLogic
    private Integer isDeleted;

    @ApiModelProperty(value = "创建人")
    private String createdBy;

    @ApiModelProperty(value = "创建时间")
    @TableField(fill = FieldFill.INSERT)
    private Date createdTime;

    @ApiModelProperty(value = "更新人")
    private String updatedBy;

    @ApiModelProperty(value = "更新时间")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updatedTime;


}
